package com.macro.mall.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;
import java.util.UUID;


@RestController
public class FileController {

    @RequestMapping("/fileUpload")
    public String uploadImg(MultipartFile file){
        if (file.isEmpty()) {
            System.out.println("上传的文件为空！");
        }
        // 文件名
        String fileName = file.getOriginalFilename();
        // 获取文件后缀名
        String extension = fileName.substring(fileName.indexOf("."));
        // 上传文件的路径
        String uploadFolder = "D://upload//file//";
        // 生成一个新的文件名
        fileName = UUID.randomUUID() + extension;

        File dest = new File(uploadFolder + fileName);
        // 检测文件目录是否存在 不存在则创建
        if (!dest.getParentFile().exists()){
            dest.getParentFile().mkdirs();
        }

        try {
            file.transferTo(dest);
            System.out.println("上传文件成功！");
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("上传文件失败！");
        }
        // 返回虚拟文件访问路径
        return "/upload/file/" + fileName;
    }
}
